package com.faya.green.utils;

import javax.servlet.http.HttpServletRequest;
import java.io.File;
import java.net.URL;

/**
 * 用户 ：LX
 * 创建时间： 2018/7/11. 16:18
 * 地点：广州
 * 目的: 路径的工具类
 * 结果：
 */
public class PathUtil {

    /**
     * 获取config.properties文件的路径
     * @return 返回结果 E:\kaiFa\IDEATest\greenSource\target\classes\config\config.properties
     */
    public static String getConfigPath(){
        String path = getClassPath("config/config.properties");
        //如果为window系统下,则把路径中的路径分隔符替换为window系统的文件路径分隔符
        path = path.replace("/", File.separator);
        return path;
    }

    /**
     *  获取resources 下的目录路径
     * @return 返回 E:/kaiFa/IDEATest/greenSource/target/classes/
     */
    public static String getClassPath(){
        URL resource = Thread.currentThread().getContextClassLoader().getResource("");
        String path = resource.getPath();
        //去掉首部的 /
        path = path.substring(1, path.length());
        return path;
    }

    /**
     * 获取resources 下的目录路径
     * @param fileName resources 下的文件的名字或者文件文件夹名，比如: config/config.properties
     * @return 返回：E:/kaiFa/IDEATest/greenSource/target/classes/config/config.properties
     */
    public static String getClassPath(String fileName){
        URL resource = Thread.currentThread().getContextClassLoader().getResource(fileName);
        String path = resource.getPath();
        //去掉首尾的 /
        path = path.substring(1, path.length());
        return path;
    }

    /**
     * 返回tomcat部署位置的路径  -- 未测试
     * @return E:\Tomcat\webapps\TEST
     */
    public static String getWebPath(HttpServletRequest request){
        return request.getSession().getServletContext().getRealPath("");
    }


}
